package com.ltkj.system.api.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ltkj.common.core.annotation.Excel;
import com.ltkj.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 附件对象 comm_attachment
 * 
 * @author chenzeen
 * @date 2023-08-30
 */
@ApiModel(value = "附件")
public class CommAttachment extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @ApiModelProperty("主键")
    private Long attaId;

    /** 业务主键ID */
    @Excel(name = "业务主键ID")
    @ApiModelProperty(value ="业务主键ID", required = true)
    private Long infoId;

    /** 业务编码 */
    @Excel(name = "业务编码")
    @ApiModelProperty(value ="业务编码",required = true)
    private String infoCode;

    /** 文件名 */
    @Excel(name = "文件名")
    @ApiModelProperty("文件名")
    private String attaName;

    /** 文件类型 */
    @Excel(name = "文件类型")
    @ApiModelProperty("文件类型")
    private String attaType;

    /** 文件大小 */
    @Excel(name = "文件大小")
    @ApiModelProperty("文件大小")
    private String attaSize;

    /** 文件路径 */
    @Excel(name = "文件路径")
    @ApiModelProperty("文件路径")
    private String attaPath;

    /** oss文件路径 */
    @Excel(name = "oss文件路径")
    @ApiModelProperty("oss文件路径")
    private String attaOssPath;

    /** 压缩后文件路径 */
    @Excel(name = "压缩后文件路径")
    @ApiModelProperty("压缩后文件路径")
    private String attaZoomPath;

    /** 上传人 */
    @Excel(name = "上传人")
    @ApiModelProperty("上传人")
    private String uploadUser;

    /** 上传时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "上传时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("上传时间")
    private Date uploadTime;

    public void setAttaId(Long attaId) 
    {
        this.attaId = attaId;
    }

    public Long getAttaId() 
    {
        return attaId;
    }
    public void setInfoId(Long infoId) 
    {
        this.infoId = infoId;
    }

    public Long getInfoId() 
    {
        return infoId;
    }
    public void setInfoCode(String infoCode) 
    {
        this.infoCode = infoCode;
    }

    public String getInfoCode() 
    {
        return infoCode;
    }
    public void setAttaName(String attaName) 
    {
        this.attaName = attaName;
    }

    public String getAttaName() 
    {
        return attaName;
    }
    public void setAttaType(String attaType) 
    {
        this.attaType = attaType;
    }

    public String getAttaType() 
    {
        return attaType;
    }
    public void setAttaSize(String attaSize) 
    {
        this.attaSize = attaSize;
    }

    public String getAttaSize() 
    {
        return attaSize;
    }
    public void setAttaPath(String attaPath) 
    {
        this.attaPath = attaPath;
    }

    public String getAttaPath() 
    {
        return attaPath;
    }
    public void setAttaOssPath(String attaOssPath) 
    {
        this.attaOssPath = attaOssPath;
    }

    public String getAttaOssPath() 
    {
        return attaOssPath;
    }
    public void setAttaZoomPath(String attaZoomPath) 
    {
        this.attaZoomPath = attaZoomPath;
    }

    public String getAttaZoomPath() 
    {
        return attaZoomPath;
    }
    public void setUploadUser(String uploadUser) 
    {
        this.uploadUser = uploadUser;
    }

    public String getUploadUser() 
    {
        return uploadUser;
    }
    public void setUploadTime(Date uploadTime) 
    {
        this.uploadTime = uploadTime;
    }

    public Date getUploadTime() 
    {
        return uploadTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("attaId", getAttaId())
            .append("infoId", getInfoId())
            .append("infoCode", getInfoCode())
            .append("attaName", getAttaName())
            .append("attaType", getAttaType())
            .append("attaSize", getAttaSize())
            .append("attaPath", getAttaPath())
            .append("attaOssPath", getAttaOssPath())
            .append("attaZoomPath", getAttaZoomPath())
            .append("uploadUser", getUploadUser())
            .append("uploadTime", getUploadTime())
            .toString();
    }
}
